perm filename VCARF.SAI[AER,HPM] blob sn#163923 filedate 1975-06-16 generic text, type C, neo UTF8
COMMENT ⊗   VALID 00002 PAGES
C REC  PAGE   DESCRIPTION
C00001 00001
C00002 00002	BEGIN "VCARF"
C00005 ENDMK
C⊗;
BEGIN "VCARF"
REQUIRE "PIXNIC.SAI[VIS,HPM]" SOURCE_FILE;
REQUIRE "CARR.SAI[AER,HPM]" SOURCE_FILE;
STRING FN;
INTEGER SIZ;

DO OUTSTR("INPUT FILE:") UNTIL (SIZ←PFLDIM(FN←INCHWL))≠0∨LENGTH(FN)=0;
IF LENGTH(FN)=0 THEN SIZ←PIXDIM(256,256,9);

   BEGIN
   INTEGER ARRAY PA[0:SIZ];
   INTEGER MAX,I,J,K,L,M,UBX,UBY;

   PROCEDURE PUTCAR(INTEGER Y,X,GY1,GY2);
      BEGIN
      EXTERNAL INTEGER CAR12;
      INTEGER I,J;
      FOR I←0 STEP 1 UNTIL 23 DO
      FOR J←0 STEP 1 UNTIL 8 DO
      IF MEMORY[LOCATION(CAR12)+I*9+J]≠9 THEN
         PUTEL(PA[0],I+Y,J+X,
         IF MEMORY[LOCATION(CAR12)+I*9+J]=8 THEN 0 ELSE
         IF MEMORY[LOCATION(CAR12)+I*9+J]=6 THEN GY2 ELSE GY1);
      END;

   IF LENGTH(FN)=0 THEN
      BEGIN
      MAKPIX(256,256,9,PA[0]);
      MAX←2↑9-1;
      FOR I←0 STEP 1 UNTIL 255 DO FOR J←0 STEP 1 UNTIL 255 DO
         PUTEL(PA[0],I,J,MAX%2);
      END
   ELSE
      BEGIN
      GETPFL(FN,PA[0]);
      MAX←2↑PA[BYBI]-1;
      END;

  UBX←PA[LNBY]-11; UBY←PA[PCLN]-26;

  OUTSTR("NUMBER OF CARS:");

  RAN(CALL(0,"TIMER"));
  FOR K←CVD(INCHWL) STEP -1 UNTIL 0 DO
     PUTCAR(RAN(0)*UBY,RAN(0)*UBX,RAN(0)*MAX,RAN(0)*MAX);

  PUTPFL(PA[0],"FAKE.CAR");
  END;
END;